[LINUX] Force .data segment to be 4k aligned on i386
authorIan Campbell <ian.campbell@xensource.com>
Tue, 23 Jan 2007 09:31:32 +0000 (09:31 +0000)
committerIan Campbell <ian.campbell@xensource.com>
Tue, 23 Jan 2007 09:31:32 +0000 (09:31 +0000)
by backporting git changeset c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4

This is required for kexec/kdump.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
patches/linux-2.6.18/git-c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4.patch [new file with mode: 0644]
patches/linux-2.6.18/series

diff --git a/patches/linux-2.6.18/git-c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4.patch b/patches/linux-2.6.18/git-c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4.patch
new file mode 100644 (file)
index 0000000..3634a22
--- /dev/null
@@ -0,0 +1,29 @@
+commit c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4
+Author: Vivek Goyal <vgoyal@in.ibm.com>
+Date:   Wed Nov 8 17:44:41 2006 -0800
+
+    [PATCH] i386: Force data segment to be 4K aligned
+    
+    o Currently there is no specific alignment restriction in linker script
+      and in some cases it can be placed non 4K aligned addresses. This fails
+      kexec which checks that segment to be loaded is page aligned.
+    
+    o I guess, it does not harm data segment to be 4K aligned.
+    
+    Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
+    Signed-off-by: Andi Kleen <ak@suse.de>
+    Signed-off-by: Andrew Morton <akpm@osdl.org>
+    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
+
+diff --git a/arch/i386/kernel/vmlinux.lds.S b/arch/i386/kernel/vmlinux.lds.S
+index adc1f23..c6f84a0 100644
+--- a/arch/i386/kernel/vmlinux.lds.S
++++ b/arch/i386/kernel/vmlinux.lds.S
+@@ -51,6 +51,7 @@ SECTIONS
+   __tracedata_end = .;
+   /* writeable */
++  . = ALIGN(4096);
+   .data : AT(ADDR(.data) - LOAD_OFFSET) {     /* Data */
+       *(.data)
+       CONSTRUCTORS
index 9a007ac3ab89ffad74ff8d6db725d75ca1287979..62b3e0e0d74d41ae336a20d2300296f7ef2ba2f5 100644 (file)
@@ -17,3 +17,4 @@ x86_64-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch
 git-dbaab49f92ff6ae6255762a948375e4036cbdbd2.patch
 x86-elfnote-as-preprocessor-macro.patch
 fixaddr-top.patch
+git-c06cb8b1c4d25e5b4d7a2d7c2462619de1e0dbc4.patch